package com.recipedb.sprint.service;

import com.recipedb.sprint.entity.Users;

import java.util.List;
import java.util.Map;
import java.util.Objects;


public interface UsersService {
    // TODO: 定义接口方法

    //用户注册（含基本信息初始化）
    Map<String, Object> register(String username, String phone, String password, Map<String, Object> profile);

    //用户登录
    Map<String, Object> login(String account, String password);

    //查看个人资料(包含购车偏好)
    Map<String, Object> getProfile(Long userid);


    //发送验证码（忘记密码用）
    Map<String, Object> sendVerifyCode(String phone);

    //验证验证码并重置密码
    void resetPassword(String phone, String verifyCode, String newPassword);

    // 辅助方法：通过token获取用户
    Users getUserByToken(String token);

    Map<String, Object> updateUser(Long userId, Map<String, Object> updates);
}
